package com.API.dal.providers;

import com.API.dal.entities.*;

import java.util.List;

/**
 * Интерфейс работы с материальным обеспечением
 * техникой, строй материалами и д.р.
*/
public interface EquipmentsProvider {
    void addEquipment(Equipments equipment, String equipment_type);
    void addEquipment(Equipments equipment, EquipmentsTypes equipment_type);
    void updateEquipment(Equipments equipment);
    void addEquipmentType(EquipmentsTypes equipment_type);
    void updateEquipmentType(EquipmentsTypes equipment_type);
    void addMaterial(Equipments equipments);
    void addTool(Equipments equipments);
    void addMechanism(Equipments equipments);
    void addMaterialProject(EquipmentsProjects equipmentsProjects);
    void addEquipmentCost(EquipmentCosts equipmentCosts);
    List<EquipmentsTypes> getEquipmentsTypes();
    EquipmentsTypes getEquipmentTypeByName(String name);
    List<Equipments> getEquipments();
    List<Equipments> getMaterials();
    List<Equipments> getTools();
    List<Equipments> getMechanisms();
    Equipments getEquipmentById(int id);
    Equipments getEquipmentByName(String name);
    List<Equipments> getEquipmentsByType(String type_name);
    List<Equipments> getEquipmentsByType(EquipmentsTypes type);
    EquipmentsTypes getEquipmentType(int equipment_id);
    Units getEquipmentUnit(int equipment_id);
    Units getEquipmentUnit(String unit_name);
    EquipmentsTypes getEquipmentType(String equipment_name);
    List<Units> getUnits();

}
